
# 面向对象编程
"""
1. 概念 ： 对现实世界的抽象 ，比如现实世界的车辆、楼房 、电梯 。
2. 实体举例 ：
    1. 抽象出一个电梯类
    2. 在电梯类中包含了属性和功能 ：
        属性 ： 按钮 、载重人数 、楼层
        功能 ： 开门 、关门 、运行
    3. 使用时具体到某一步电梯 ，操作它的属性和功能

3. 软件举例 ：
    (1). bug类
    (2). bug的属性 ： bug字段 ，bug编号 ，bug标题 等
    (3) .bug功能 ： 增、 删、改、查
    (4) .创建一个bug , 可以对该bug进行操作 。

4. 步骤：
    1. 将某个具体事物抽象成一个类
    2. 在此类中找到包含的属性(数据)和功能(方法)
    3. 初始化一个对象(实例) ，通过该对象就可以操作属性和功能 ，从而实现了具体的需求

5. 解释：
    属性(数据) 就是 变量
    功能   就是 函数 ，在这里叫方法 。


6. 定义
class 类名():
    属性 >= 0
    方法 >= 0


对象名 = 类名()          # 初始化对象
对象名.属性
对象名.方法
"""

class Elevator():

    # 属性
    button = [1,2,3,4,5,6]
    max_nums = 12
    floor = 6

    # 方法，
    def open(self):
        print("开门")

    def close(self):
        print("关门")

    def run(self,floor):
        print("运行到{}层".format(floor))


elv = Elevator()        # 初始化对象
print("最大载重人数：{}".format(elv.max_nums))     # 调用属性
print("电梯运行到3层:",elv.run(3))                # 调用方法


class Bug:

    # 定义属性
    project = 'tpshop'
    product = 'tpshop'
    version = 1.0

    # 定义方法
    def create_bug(self):
        pass

    def update_bug(self):
        pass

    def delete_bug(self):
        pass

    def search_bug(self):
        pass

bug = Bug()
print(bug.version)